<%@ page import="java.util.List" %>
<%@ page import="com.cuit.pojo.AcceptOrderData" %>
<%@ page import="com.mysql.cj.Session" %>

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<script type="text/javascript" src="../../static/js/jquery-3.3.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.5.3/jspdf.debug.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.5.0-beta4/html2canvas.min.js"></script>
<head>
    <title>打印预览</title>
    <link title="blue" type="text/css" rel="stylesheet" href="head.css">
</head>
<body>
<script>
    // 获取本页表格中最后一行是第几行（对不同高度的表格进行不同的处理）
    var last_counts =$('#show1:last').text();
    //监听pdf导出按键
    aa=function () {
        // 将 id 为 contents 的 div 渲染成 canvas
        html2canvas(document.getElementById("show"), {
            // 渲染完成时调用，获得 canvas
            onrendered: function(canvas) {
                // 从 canvas 提取图片数据
                var imgData = canvas.toDataURL('image/jpeg');

                //初始化pdf，设置相应格式（单位为pt,导出a4纸的大小）
                var doc = new jsPDF("p", "pt", "a4");

                // 初始导出的页面为270（根据引入的图片和每行表格的高度设置）
                var img_high = 100;
                for (var i=1; i<last_counts; i++) {
                    // 然后每增加一行加20的高（因为我的表格是分页的，每页最多26行，所以最高为750）
                    img_high += 20
                }
                doc.addImage(imgData, 100, 65, 1300, img_high);

                //输出保存命名为bill的pdf
                doc.save('bill.pdf');
            },
            // 导出的pdf默认背景颜色为黑色，所以要设置颜色为白（根据自己的需求设置）
            background: '#FFF'
        })
    };
</script>
<div id="show">
    <table id="show1">
        <caption>预约查询结果</caption>
        <tr><td>姓名</td><td>性别</td><td>年龄</td><td>部门</td><td>专家/普通</td><td>星期</td><td>坐诊时间</td><td>预约上限</td></tr>
    <%
        List a = (List) session.getAttribute("list");
        for(int i=0; i<a.size(); i++)
        {
            AcceptOrderData doc = (AcceptOrderData) a .get(i);
    %>
        <tr><td><%= doc.getD_name()%><td><%= doc.getD_sex()%></td><td><%= doc.getD_age()%></td><td><%= doc.getD_department()%></td><td><%= doc.getD_grade()%></td><td><%= doc.getD_week()%></td><td><%= doc.getSitting_time()%></td><td><%= doc.getMax_order()%></td></tr>
    <%
        }
    %>
    </table>
</div>
<div>
    <button onclick="aa()" id="btn1">打印</button>
</div>
</body>
</html>
